#ifndef tokens_h
#define tokens_h
/* tokens.h -- List of labelled tokens and stuff
 *
 * Generated from: cl.g
 *
 * Terence Parr, Will Cohen, and Hank Dietz: 1989-2001
 * Purdue University Electrical Engineering
 * ANTLR Version 1.33MR33
 */
#define zzEOF_TOKEN 1
#define INPUTEND 1
#define PROGRAM 2
#define ENDPROGRAM 3
#define PROCEDURE 4
#define ENDPROCEDURE 5
#define FUNCTION 6
#define ENDFUNCTION 7
#define VAL 8
#define REF 9
#define RETURN 10
#define IF 11
#define THEN 12
#define ELSE 13
#define ENDIF 14
#define WHILE 15
#define DO 16
#define ENDWHILE 17
#define FOR 18
#define ENDFOR 19
#define VARS 20
#define ENDVARS 21
#define STRUCT 22
#define ENDSTRUCT 23
#define INT 24
#define BOOL 25
#define STRING 26
#define HASH 27
#define ARRAY 28
#define OF 29
#define READ 30
#define WRITE 31
#define WRITELN 32
#define IN 33
#define AND 34
#define OR 35
#define EQUAL 36
#define LESS 37
#define GREATER 38
#define PLUS 39
#define MINUS 40
#define TIMES 41
#define DIVIDED 42
#define NOT 43
#define OPENPAR 44
#define CLOSEPAR 45
#define OPENBR 46
#define CLOSEBR 47
#define OPENCB 48
#define CLOSECB 49
#define ARROW 50
#define ASIG 51
#define DOT 52
#define COMMA 53
#define TRUECONST 54
#define FALSECONST 55
#define IDENT 56
#define INTCONST 57
#define STRINGCONST 58
#define COMMENT 59
#define WHITESPACE 60
#define NEWLINE 61
#define LEXICALERROR 62

#ifdef __USE_PROTOS
void program(AST**_root);
#else
extern void program();
#endif

#ifdef __USE_PROTOS
void dec_vars(AST**_root);
#else
extern void dec_vars();
#endif

#ifdef __USE_PROTOS
void l_dec_vars(AST**_root);
#else
extern void l_dec_vars();
#endif

#ifdef __USE_PROTOS
void dec_var(AST**_root);
#else
extern void dec_var();
#endif

#ifdef __USE_PROTOS
void constr_type(AST**_root);
#else
extern void constr_type();
#endif

#ifdef __USE_PROTOS
void field(AST**_root);
#else
extern void field();
#endif

#ifdef __USE_PROTOS
void l_dec_blocs(AST**_root);
#else
extern void l_dec_blocs();
#endif

#ifdef __USE_PROTOS
void dec_bloc(AST**_root);
#else
extern void dec_bloc();
#endif

#ifdef __USE_PROTOS
void dec_proc(AST**_root);
#else
extern void dec_proc();
#endif

#ifdef __USE_PROTOS
void header_proc(AST**_root);
#else
extern void header_proc();
#endif

#ifdef __USE_PROTOS
void dec_func(AST**_root);
#else
extern void dec_func();
#endif

#ifdef __USE_PROTOS
void header_func(AST**_root);
#else
extern void header_func();
#endif

#ifdef __USE_PROTOS
void l_params(AST**_root);
#else
extern void l_params();
#endif

#ifdef __USE_PROTOS
void dec_param(AST**_root);
#else
extern void dec_param();
#endif

#ifdef __USE_PROTOS
void dec_return(AST**_root);
#else
extern void dec_return();
#endif

#ifdef __USE_PROTOS
void do_return(AST**_root);
#else
extern void do_return();
#endif

#ifdef __USE_PROTOS
void l_instrs(AST**_root);
#else
extern void l_instrs();
#endif

#ifdef __USE_PROTOS
void instruction(AST**_root);
#else
extern void instruction();
#endif

#ifdef __USE_PROTOS
void l_args(AST**_root);
#else
extern void l_args();
#endif

#ifdef __USE_PROTOS
void expression(AST**_root);
#else
extern void expression();
#endif

#ifdef __USE_PROTOS
void expression_and_priority(AST**_root);
#else
extern void expression_and_priority();
#endif

#ifdef __USE_PROTOS
void expression_equal_priority(AST**_root);
#else
extern void expression_equal_priority();
#endif

#ifdef __USE_PROTOS
void expression_in_priority(AST**_root);
#else
extern void expression_in_priority();
#endif

#ifdef __USE_PROTOS
void expression_plus_priority(AST**_root);
#else
extern void expression_plus_priority();
#endif

#ifdef __USE_PROTOS
void expression_times_priority(AST**_root);
#else
extern void expression_times_priority();
#endif

#ifdef __USE_PROTOS
void expression_not_priority(AST**_root);
#else
extern void expression_not_priority();
#endif

#ifdef __USE_PROTOS
void expression_value(AST**_root);
#else
extern void expression_value();
#endif

#ifdef __USE_PROTOS
void dict(AST**_root);
#else
extern void dict();
#endif

#ifdef __USE_PROTOS
void l_key_value(AST**_root);
#else
extern void l_key_value();
#endif

#ifdef __USE_PROTOS
void key_value(AST**_root);
#else
extern void key_value();
#endif

#endif
extern SetWordType zzerr1[];
extern SetWordType zzerr2[];
extern SetWordType setwd1[];
extern SetWordType zzerr3[];
extern SetWordType zzerr4[];
extern SetWordType zzerr5[];
extern SetWordType setwd2[];
extern SetWordType zzerr6[];
extern SetWordType zzerr7[];
extern SetWordType setwd3[];
extern SetWordType zzerr8[];
extern SetWordType zzerr9[];
extern SetWordType zzerr10[];
extern SetWordType zzerr11[];
extern SetWordType zzerr12[];
extern SetWordType setwd4[];
extern SetWordType zzerr13[];
extern SetWordType zzerr14[];
extern SetWordType zzerr15[];
extern SetWordType zzerr16[];
extern SetWordType setwd5[];
extern SetWordType zzerr17[];
extern SetWordType zzerr18[];
extern SetWordType zzerr19[];
extern SetWordType setwd6[];
